package com.bootdo.app.service;

import com.bootdo.app.dto.wx.TemplateMsgRequest;
import com.bootdo.app.dto.wx.TransferMoneyRequest;
import com.bootdo.app.vo.wx.TransferMoneyResponse;
import com.bootdo.app.vo.wx.Code2SessionVo;

/**
 * @auther: Along
 * @description: 第三方微信接口
 */
public interface WXService {

    /**
     * 获取微信Access_token (微信失效时间为 2小时)（业务处理，提前1小时过期）
     */
    String getAccessToken(String appId,String appSecret);

    /**
     * 创建微信公众号菜单
     */
    boolean createWxMenu(String appId,String appSecret,String wxMenuJson);

    /**
     * 【微信小程序】-code2Session 接口
     */
    Code2SessionVo code2Session(String appid,String appSecret,String code);



    /**
     * 提现(商家付款给用户零钱)
     *
     * 参考文档: https://pay.weixin.qq.com/wiki/doc/api/tools/mch_pay.php?chapter=14_1
     */
    TransferMoneyResponse transferMoneyToUser(TransferMoneyRequest request);


    /**
     * 发送微信公众号模板消息
     * @param appId
     * @param appSecret
     * @param templateMsg
     */
    void sendTemplateMsg(String appId,String appSecret,TemplateMsgRequest templateMsg);
    

}
